`:top
The `!Call Level Interface`! (`!CLI`! or `!SQL/CLI`!) is an `F33f`_`[application programming interface`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Application_programming_interface]`_`f (API)`:cite-ref-1[`F5bf`_`[1`#cite-note-1]`_`f] and software standard to embed Structured Query Language (`F33f`_`[SQL`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=SQL]`_`f) code in a host program`:cite-ref-2[`F5bf`_`[2`#cite-note-2]`_`f] as defined in a joint standard by the `F33f`_`[International Organization for Standardization`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=International_Organization_for_Standardization]`_`f (ISO) and `F33f`_`[International Electrotechnical Commission`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=International_Electrotechnical_Commission]`_`f (IEC).`:cite-ref-3[`F5bf`_`[3`#cite-note-3]`_`f] The Call Level Interface defines how a program should send `F33f`_`[SQL queries`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=SQL_queries]`_`f to the `F33f`_`[database management system`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Database_management_system]`_`f (DBMS) and how the returned `F33f`_`[recordsets`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Recordset]`_`f should be handled by the application in a consistent way. Developed in the early 1990s, the API was defined only for the programming languages `F33f`_`[C`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=C_(programming_language)]`_`f and `F33f`_`[COBOL`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=COBOL]`_`f.
The interface is part of what `F33f`_`[The Open Group`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=The_Open_Group]`_`f, publishes in a part of the `F33f`_`[X/Open Portability Guide`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=X/Open]`_`f, termed the Common Application Environment, which is intended to be a wide standard for programming open applications, i.e., applications from different programming teams and different vendors that can interoperate efficiently. SQL/CLI provides an international standard implementation-independent CLI to access SQL databases. `F33f`_`[Client–server`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Client–server_model]`_`f tools can easily access databases through `F33f`_`[dynamic-link libraries`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Dynamic-link_libraries]`_`f (DLL). It supports and encourages a rich set of client–server tools.
The most widespread use of the CLI standard is the basis of the `F33f`_`[Open Database Connectivity`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Open_Database_Connectivity]`_`f (ODBC) specification, which is widely used to allow applications to transparently access database systems from different vendors. ODBC incorporates features from both the ISO and X/Open standards. Examples of languages that support Call Level Interface are ANSI C, `F33f`_`[C#`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=C_Sharp_(programming_language)]`_`f, `F33f`_`[Visual Basic .NET`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Visual_Basic_.NET]`_`f (VB.NET), `F33f`_`[Java`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Java_(programming_language)]`_`f, `F33f`_`[Pascal`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Pascal_(programming_language)]`_`f, and `F33f`_`[Fortran`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Fortran]`_`f.`:cite-ref-4[`F5bf`_`[4`#cite-note-4]`_`f]
>>Contents
• `F0af`_`[History`#history]`_`f
• `F0af`_`[See also`#see-also]`_`f
• `F0af`_`[References`#references]`_`f
• `F0af`_`[External links`#external-links]`_`f
-─
>>History
The work with the Call Level Interface began in a subcommittee of the US-based `F33f`_`[SQL Access Group`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=SQL_Access_Group]`_`f (SAG)`:cite-ref-5[`F5bf`_`[5`#cite-note-5]`_`f]`:cite-ref-6[`F5bf`_`[6`#cite-note-6]`_`f]`:cite-ref-7[`F5bf`_`[7`#cite-note-7]`_`f] In 1992, it was initially published and marketed as `F33f`_`[Microsoft`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Microsoft]`_`f's ODBC API. The CLI specification was submitted as to the ISO and `F33f`_`[American National Standards Institute`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=American_National_Standards_Institute]`_`f (ANSI) standards committees in 1993. The standard has the book number `F33f`_`[ISBN`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=ISBN_(identifier)]`_`f 1-85912-081-4 and the internal document number is C451.
ISO SQL/CLI is an addendum to 1992 SQL standard (`F33f`_`[SQL-92`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=SQL-92]`_`f). It was completed as ISO standard ISO/IEC 9075-3:1995 Information technology—Database languages—SQL—Part 3: Call-Level Interface (SQL/CLI).
In the fourth quarter of 1994, control over the standard was transferred to the `F33f`_`[X/Open`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=X/Open]`_`f Company, which significantly expanded and updated it. The X/Open CLI interface is a superset of the ISO SQL CLI.
SQL/CLI remains available in later editions such as ISO/IEC 9075-3:2003.
>>See also
• `F33f`_`[SQL`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=SQL]`_`f
• `F33f`_`[SQL:2003`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=SQL:2003]`_`f
• `F33f`_`[Open Database Connectivity`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Open_Database_Connectivity]`_`f
>>References
`:cite-note-1`!1.`! `F0af`_`[↑`#cite-ref-1]`_`f "Chapter 1". `*Technical Standard - Data Management: SQL Call Level Interface (CLI)`*. X/Open Company Ltd., U.K. 1995. p. 1. `F33f`_`[ISBN`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=ISBN_(identifier)]`_`f 1-85912-081-4.
`:cite-note-2`!2.`! `F0af`_`[↑`#cite-ref-2]`_`f `:citerefstephensplewjones2011`aStephens, Ryan; Plew, Ron; Jones, Arie (2011). `*Sams Teach Yourself SQL`* (5th ed.). Pearson Education. p. 349. `F33f`_`[ISBN`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=ISBN_(identifier)]`_`f 978-0672335419.
`:cite-note-3`!3.`! `F0af`_`[↑`#cite-ref-3]`_`f "ISO/IEC 9075-3:2003". ISO. Retrieved 13 December 2014.
`:cite-note-4`!4.`! `F0af`_`[↑`#cite-ref-4]`_`f `:citerefstephensplewjones2011`aStephens, Ryan; Plew, Ron; Jones, Arie (2011). `*Sams Teach Yourself SQL`* (5th ed.). Pearson Education. p. 351. `F33f`_`[ISBN`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=ISBN_(identifier)]`_`f 978-0672335419.
`:cite-note-5`!5.`! `F0af`_`[↑`#cite-ref-5]`_`f "Call-Level Interface". `*FOLDOC: Free On-Line Dictionary of Computing`*. FOLDOC. Retrieved 13 December 2014.
`:cite-note-6`!6.`! `F0af`_`[↑`#cite-ref-6]`_`f "Call-level interface | Define Call-level interface at Dictionary.com". `*dictionary.reference.com`*. Archived from the original on 2013-01-01.
`:cite-note-7`!7.`! `F0af`_`[↑`#cite-ref-7]`_`f "CLI Definition from PC Magazine Encyclopedia". PC Mag. Retrieved 13 December 2014. A database programming interface from the SQL Access Group (SAG), an SQL membership organization.
>>External links
• Online definition of CLI at `F33f`_`[The Open Group`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=The_Open_Group]`_`f webpage
`c`F0af`_`[↑ Back to top`#top]`_`f`a